package com.doubao.notepad_blog_backend.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.doubao.notepad_blog_backend.domain.BmsPost;
import com.doubao.notepad_blog_backend.dto.CreatePostDTO;
import com.doubao.notepad_blog_backend.vo.PostVO;

import java.util.List;
import java.util.Map;

public interface BmsPostService extends IService<BmsPost> {
    // Page<PostVO> selectListAndPage(@Param("page") Page<PostVO> page, @Param("tab") String tab);

    Page<PostVO> getList(Integer pageNo, Integer pageSize, String tab);

    BmsPost createPost(String userName, CreatePostDTO createPostDTO);

    Map<String, Object> getPostById(String id);

    List<BmsPost> getRecommend(String id);

    BmsPost updateById(String userName, BmsPost post);

    void deleteById(String userName, String id);

    Page<PostVO> searchByKey(String keyword, Page<PostVO> page);
}
